//
//  View_Tool.h
//  news_ios_app
//
//  Created by fank on 16/3/19.
//  Copyright © 2016年 apple. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "MBProgressHUD.h"

typedef enum {
    AlertTypeMessage,
    AlertTypeSuccess,
    AlertTypeFail,
    AlertTypeNetwork,
    AlertTypeWait,
    AlertTypeCustom
} AlertType;

@interface View_Tool : NSObject
/**
 @brief  显示一条弹出提示信息，所有不加view参数的,都是默认加在主window上,无法进行其他操作!!!
 
 @param message    提示信息
 @param type       消息类型 AlertType
 @param isAutoHide 自动隐藏提示开关
 @param view       alert view的父视图
 
 @since 3.0.0
 */
+ (void)alert:(NSString *)message type:(AlertType)type autoHide:(BOOL)isAutoHide inView:(UIView *)view;

/**
 @brief  显示一条弹出提示信息，父视图是keywindow
 
 @param message    提示信息
 @param type       消息类型
 @param isAutoHide 自动隐藏提示开关
 
 @since 3.0.0
 */
+ (void)alert:(NSString *)message type:(AlertType)type autoHide:(BOOL)isAutoHide;

/**
 @brief  显示一条弹出提示信息，父视图是keywindow
 
 @param message 提示信息
 @param type    消息类型
 @param time    提示时间
 
 @since 3.9.2
 */
+ (void)alert:(NSString *)message type:(AlertType)type durationTime:(NSTimeInterval)time;


/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param message 提示信息
 @param type    消息类型
 
 @since 3.0.0
 */
+ (void)alert:(NSString *)message type:(AlertType)type;
/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param message 提示信息，消息类型为AlertTypeMessage
 
 @since 3.0.0
 */
+ (void)alertMessage:(NSString *)message;
/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param message 成功的提示语
 
 @since 3.0.0
 */
+ (void)alertSuccess:(NSString *)message;
/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param message 失败的提示语
 
 @since 3.0.0
 */
+ (void)alertFail:(NSString *)message;
/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param message 带网络标识的提示语
 
 @since 3.0.0
 */
+ (void)alertNetwork:(NSString *)message;
/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param message 网络提示语“您的网络不给力，请稍后再试”
 
 @since 3.0.0
 */
+ (void)alertNetworkLess;
/**
 @brief  显示一条AlertTypeWait类型的提示语
 
 @since 3.0.0
 */
+ (void)alertWait;
/**
 @brief  隐藏keywinow上的提示框
 
 @since 3.0.0
 */
+ (void)hideAlert;
/**
 @brief  隐藏指定视图上的提示框
 
 @since 3.0.0
 */
+ (void)hideAlertInView:(UIView *)view;

/**
 @brief  显示一条1s后自动隐藏的提示信息，父视图是keywindow
 
 @param alertImage 自定义的提示图标
 
 @param message 带网络标识的提示语
 
 @param time    自动隐藏提示开关
 
 @since 4.1.0
 */
+ (void)alertCustomView:(UIImage *)alertImage message:(NSString *)message durationTime:(NSTimeInterval)time;
@end
